package com.habdqn.easybuy.util;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 分页工具类
 * @author Xing.Jiejian
 * @date 2020/11/26
 */
@Data
@NoArgsConstructor
public class Page<T> {
    /**
     * 页码
     */
    private int pageNo = 1;
    /**
     * 每页显示数量
     */
    private int pageSize = 5;
    /**
     * 分页记录
     */
    private List<T> rows;
    /**
     * 总记录数
     */
    private int total;

    public Page(int pageNo, int pageSize) {
        this.pageNo = pageNo;
        this.pageSize = pageSize;
    }

    /**
     * 总页码数
     *
     * @return 总页码数
     */
    public int getPages() {
        return (total + pageSize - 1) / pageSize;
    }

    /**
     * 查询偏移量
     * @return 偏移量
     */
    public int getOffset(){
        return (pageNo - 1) * pageSize;
    }

    /**
     * 最大查询数量
     * @return 最大查询数量
     */
    public int getLimit(){
        return pageSize;
    }
}
